home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Turnbull China Bikeride
/
Turnbull China Bikeride - Disc 2.iso
/
BARNET
/
COMPILER
/
SATHER
/
!Sather
/
Library
/
Base
/
Base.sam
next >
Wrap
Text File
|
1997-03-08
|
3KB
|
82 lines
-- Copyright (C) International Computer Science Institute, 1994. COPYRIGHT --
-- NOTICE: This code is provided "AS IS" WITHOUT ANY WARRANTY and is subject --
-- to the terms of the SATHER LIBRARY GENERAL PUBLIC LICENSE contained in --
-- the file "Doc/License" of the Sather distribution. The license is also --
-- available from ICSI, 1947 Center St., Suite 600, Berkeley CA 94704, USA. --
--------> Please email comments to "sather-bugs@icsi.berkeley.edu". <----------
(* BASE CLASSES
The base classes are the primitives out of which all Sather
classes may be built. Most are given special treatment by
the compiler.
Some examples of literals for built-in Sather types:
ARRAY - | a, b, c |
BOOL - true
CHAR - 'a'
FLT - 1.0
FLTD - 1.0d
INT - 56
STR - "abc"
AREF provides an array portion to classes which include it.
If you want more functionality such as sorting, the ARRAY class
(in Containers) is what you want. AVAL is the equivalent of
AREF for value classes.
EXT_OB is used to carry values foreign to Sather, such as C pointers.
The 1.0 language spec defines FLT, FLTD, FLTX and FLTDX which
correspond the IEEE single, double, extended and double extended
respectively. The current compiler only implements FLT and FLTD
however. FLTI is an infinite precision floating point class; it
isn't implemented either. However, take a look at RAT in Math.
Both signed and unsigned operations are provided on Sather INT;
there are not special types for these.
A complete description of the built-in Sather types can be found
in the language specification, which is in the Doc directory of
the Sather installation.
*)
-- This is a list of library files that can automatically
-- be loaded by a reference in users' SATHER_COMMANDS env variable
abstract.sa -has abstract.sa
$IS_EQ $IS_LT $HASH $NIL $COPY $STR $ELT
COMPARABLE COMPARE
aref.sa -has aref.sa AREF
aval.sa -has aval.sa AVAL
bool.sa -has bool.sa BOOL
char.sa -has char.sa CHAR
flt.sa -has flt.sa FLT C_FLT
fltd.sa -has fltd.sa FLTD C_FLTD
succ_strm.sa -has succ_strm.sa $SUCC_STREAM INT_STREAM
int.sa -has int.sa INT
misc.sa -has misc.sa $OB EXT_OB CAST CAST_EXC
number.sa -has number.sa $NFE $NUMBER $REAL_NUMBER $CPX_NUMBER
test/char.sa -has test/char.sa TEST_CHAR
test/bool.sa -has test/bool.sa TEST_BOOL
test/fltd.sa -has test/fltd.sa TEST_FLTD_OUTPUT
test/int.sa -has test/int.sa TEST_INT
test/aref.sa -has test/aref.sa TEST_AREF
test/math.sa -has test/math.sa TEST_MATH TEST_FLT TEST_FLTD
-- Dummy versions of non-existant FLT classes
flt_dummy.sa -has flt_dummy.sa FLTX FLTDX FLTI
-- Non existant junk (for now). Unimplememented part of spec.
-- flt_other.sa -has flt_other.sa FLT_UNDEF FLTX FLTDX FLTI